<!DOCTYPE html>
<html lang="zh-CN">

<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Generator核心语法</title>
</head>

<body>
  <h2>Generator核心语法</h2>
  <script>
    /**
     * Generator核心语法
     *  1. 定义生成器函数
     *  2. 获取 Generator对象
     *  3. next方法
     *  4. for of
     * */
    // 1. 定义生成器函数
    function* itheimaGenerator() {
      console.log('itheimaGenerator执行啦!')
      yield 'it'
      yield 'heima'
      yield '666'
    }

    // 2. 获取 Generator对象
    const itheima = itheimaGenerator()

    // 3. next方法
    // {value:'yield之后的值',done:false/true}
    // done: 是否执行完毕,false 可以继续执行, true 已经执行完毕
    // value: yield之后的值

    // 4. for of
    for (const iterator of itheima) {
      console.log(iterator)
    }
  </script>
</body>

</html>